#define _CRT_SECURE_NO_WARNINGS 1

//
//#include <iostream>
//#include <vector>
//using namespace std;
//
//vector<int> mul(vector<int>& A, int b)
//{
//	vector<int> c;
//	int t = 0;
//	for (int i = 0; i < A.size(); i++)
//	{
//		t = A[i] * b + t;
//		c.push_back(t % 10);
//		t /= 10;
//	}
//	if (t) c.push_back(t);
//	while (c.size() > 1 && c.back() == 0) c.pop_back();
//	return c;
//}
//
//int main()
//{
//	string a;
//	int b;
//	cin >> a >> b;
//	vector<int> A;
//	for (int i = a.size() - 1; i >= 0; i--)
//		A.push_back(a[i] - '0');
//
//	auto c = mul(A, b);
//	for (int i = c.size() - 1; i >= 0; i--)
//		printf("%d", c[i]);
//
//	return 0;
//}


//
//#include <iostream>
//#include <vector>
//#include <algorithm>
//using namespace std;
//
//
//vector<int> div(vector<int>& A, int b, int& r)
//{
//	vector<int> c;
//	r = 0;
//	for (int i = A.size() - 1; i >= 0; i--)
//	{
//		r = r * 10 + A[i];
//		c.push_back(r / b);
//		r %= b;
//	}
//	reverse(c.begin(), c.end());
//	while (c.size() > 1 && c.back() == 0) c.pop_back();
//	return c;
//}
//
//int main()
//{
//	string a;
//	int b, r;
//	cin >> a >> b;
//	vector<int> A;
//	for (int i = a.size() - 1; i >= 0; i--)
//		A.push_back(a[i] - '0');
//
//	auto c = div(A, b, r);
//	for (int i = c.size() - 1; i >= 0; i--)
//		printf("%d", c[i]);
//	printf("\n");
//	cout << r << endl;
//}


//#include <iostream>
//
//using namespace std;
//
//const int N = 100010;
//int n, m;
//int a[N], s[N];
//
//int main()
//{
//	scanf("%d%d", &n, &m);
//	for (int i = 1; i <= n; i++)
//		scanf("%d", &a[i]);
//
//	for (int i = 1; i <= n; i++)
//		s[i] = s[i - 1] + a[i];
//
//	while (m--)
//	{
//		int l, r;
//		scanf("%d%d", &l, &r);
//		printf("%d\n", s[r] - s[l - 1]);
//	}
//	return 0;
//}


//#include <iostream>
//using namespace std;
//
//const int N = 1010;
//int n, m, q;
//int a[N][N], s[N][N];
//
//int main()
//{
//	scanf("%d%d%d", &n, &m, &q);
//	for (int i = 1; i <= n; i++)
//		for (int j = 1; j <= m; j++)
//			scanf("%d", &a[i][j]);
//
//	for (int i = 1; i <= n; i++)
//		for (int j = 1; j <= m; j++)
//			s[i][j] = s[i][j - 1] + s[i - 1][j] - s[i - 1][j - 1] + a[i][j];
//
//	while (q--)
//	{
//		int x1, y1, x2, y2;
//		scanf("%d%d%d%d", &x1, &y1, &x2, &y2);
//		printf("%d\n", s[x2][y2] - s[x2][y1 - 1] - s[x1 - 1][y2] + s[x1 - 1][y1 - 1]);
//	}
//	return 0;
//}


//#include <iostream>
//
//using namespace std;
//
//const int N = 100010;
//int n, m;
//int a[N],b[N];
//
//void insert(int l, int r, int c)
//{
//	b[l] += c;
//	b[r + 1] -= c;
//}
//
//int main()
//{
//	scanf("%d%d", &n, &m);
//	for (int i = 1; i <= n; i++)
//		scanf("%d", &a[i]);
//
//	for (int i = 1; i <= n; i++)
//		insert(i, i, a[i]);
//
//	while (m--)
//	{
//		int l, r, c;
//		scanf("%d%d%d", &l, &r, &c);
//		insert(l, r, c);
//	}
//
//	for (int i = 1; i <= n; i++)
//		a[i] = a[i - 1] + b[i];
//
//	for (int i = 1; i <= n; i++)
//		printf("%d ", a[i]);
//
//	return 0;
//}

//#include <iostream>
//
//using namespace std;
//
//const int N = 1010;
//int n, m, q;
//int a[N][N], b[N][N];
//
//void insert(int x1, int y1, int x2, int y2, int c)
//{
//	b[x1][y1] += c;
//	b[x2 + 1][y1] -= c;
//	b[x1][y2 + 1] -= c;
//	b[x2 + 1][y2 + 1] += c;
//}
//
//int main()
//{
//	scanf("%d%d%d", &n, &m, &q);
//	for (int i = 1; i <= n; i++)
//	{
//		for (int j = 1; j <= m; j++)
//		{
//			scanf("%d", &a[i][j]);
//			insert(i, j, i, j, a[i][j]);
//		}
//	}
//
//	while (q--)
//	{
//		int x1, y1, x2, y2, c;
//		cin >> x1 >> y1 >> x2 >> y2 >> c;
//		insert(x1, y1, x2, y2, c);
//	}
//
//	for (int i = 1; i <= n; i++)
//	{
//		for (int j = 1; j <= m; j++)
//		{
//			a[i][j] = a[i][j - 1] + a[i - 1][j] - a[i - 1][j - 1] + b[i][j];
//			printf("%d ", a[i][j]);
//		}
//		printf("\n");
//	}
//		
//			
//	return 0;
//	
//}

//abc efg hij

//#include <iostream>
//#include <cstring>
//using namespace std;
//
//int main()
//{
//	char a[100];
//	fgets(a,1000,stdin);
//
//	int n = strlen(a);
//
//	for (int i = 0; i < n; i++)
//	{
//		int j = i;
//		while (j < n && a[j] != ' ') j++;
//
//		for (int k = i; k < j; k++)
//			cout << a[k];
//		printf("\n");
//
//		i = j;
//	}
//	return 0;
//}


#include <iostream>
#include <cstring>
using namespace std;

int main()
{
	char a[1000];
	fgets(a, 1000,stdin);

	int n = strlen(a);

	for (int i = 0; i < n; i++)
	{
		int j = i;
		while (j < n && a[j] != ' ') j++;

		for (int k = i; k < j; k++)
			cout << a[k];
		cout << endl;

		i = j;
	}
	return 0;
}


//#include <iostream>
//
//using namespace std;
//
//const int N = 100010;
//int n;
//int a[N], s[N];
//
//int main()
//{
//	scanf("%d", &n);
//	for (int i = 0; i < n; i++)
//		scanf("%d", &a[i]);
//
//	int res = 0;
//	for (int i = 0, j = 0; i < n; i++)
//	{
//		s[a[i]] ++;
//		while (j < n && s[a[i]] > 1)
//		{
//			s[a[j]]--;
//			j++;
//		}
//		res = max(res, i - j + 1);
//	}
//	cout << res << endl;
//	return 0;
//}

//#include <iostream>
//#include <cstring>
//using namespace std;
//
//int main()
//{
//	char a[100];
//	fgets(a, 100, stdin);
//	cout << a << endl;
//	return 0;
//}